public class Solution5 {
    //413. 等差数列划分
    public int numberOfArithmeticSlices(int[] nums) {
        int n = nums.length;
        if (n < 3) {
            return 0;
        }
        int[] dp = new int[n]; //以i结尾的等差数列的长度
        int sum = 0;
        for (int i = 2; i < n; i++) {
            if (nums[i] - nums[i-1] == nums[i-1] - nums[i-2]) {
                dp[i] = dp[i-1] + 1;
            }
            sum += dp[i];
        }

        return sum;
    }
}
